#pragma once

#include <opencv2\opencv.hpp>

#include "Params.h"

using namespace cv;

class MLEvaluation
{
public:
	void evaluate ();
	float accur;
	float precis;
	float sensib;
	float specif;
	float youd;
	float roc;
	int k;
	Mat confusion;
	void createConfusionMatrix(Mat& data, Mat& labels, CvSVMParams& params, const int k);
	Mat confusionMatrix(Mat& data, Mat& labels, CvSVMParams& params, const int k);
	static float sensibility (Mat& confusion);
	static float specificity (Mat& confusion);
	static float precision (Mat& confusion);
	static float accuracy (Mat& confusion);
	static float youden (Mat& confusion);
	static float ROC (Mat& conf);
};